from django.shortcuts import render

# Create your views here.
from rest_framework.response import Response

# from apps.users.models import User  错误的
from users.models import User

"""
一. 确定需求
二. 确定采用哪种请求方式和url
三. 实现
1.前端发送一个ajax请求，给后端，参数是 用户名

2.后端接收用户名
3.查询校验是否重复
4.返回响应

GET     /user/usernames/count/(?P<username>\w{5,20})/

"""
from rest_framework.views import APIView
#APIView
#GenericAPIView     列表，详情通用支持，一般和mixin配合使用
#ListAPIView,RetrieveAPIView
"""
    前端传递过来的数据 已经在 url中校验过了
    我们也不需要  序列化器
"""

#注册用户名
class RegisterUsernameCountView(APIView):

    def get(self,request,username):
        # 2.后端接收用户名
        #username

        # 3.查询校验是否重复
        #count = 0 表示没有注册
        #count = 1 表示注册
        count = User.objects.filter(username=username).count()

        # 4.返回响应，返回的是json数据
        return Response({"count":count,"username":username})


#注册手机号
class RegisterPhoneCountAPIView(APIView):

    def get(self,request,mobile):

        #通过模型查询获取手机号的个数
        count = User.objects.filter(mobile=mobile).count()

        #返回响应
        return Response({"count":count,"phone":mobile})
